{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 372,
   "id": "a4f24a5e-29c2-44c1-a8bd-66d4904b7646",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "import gzip\n",
    "import time\n",
    "import h5py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 373,
   "id": "ecceae28-2f57-4be0-883b-b1af455b57d7",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "from scipy.sparse import csr_matrix\n",
    "import scanpy as sc\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 374,
   "id": "a5ae7e95-2a8a-4872-8b40-7ecb6ebe80e4",
   "metadata": {},
   "outputs": [],
   "source": [
    "path = '/home/guilherme/Documents/science/karina_march1/'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 375,
   "id": "4cdfbf9e-bb8a-4cd6-85c4-7cd0cda29018",
   "metadata": {},
   "outputs": [],
   "source": [
    "# print([d for d in os.listdir(path) if os.path.isdir(path+d)])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 376,
   "id": "f51cf0a0-0b52-40b8-b737-6b871083b68a",
   "metadata": {},
   "outputs": [],
   "source": [
    "files_series = ['GSE9377', 'GSE203548']\n",
    "files_vsd = ['GSE175718', 'GSE131179', 'GSE120649']"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "68cc991b-92ae-4876-bc1c-2b32b3dda6ef",
   "metadata": {},
   "source": [
    "# GSE175718, GSE131179, GSE120649"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 377,
   "id": "826d6d24-f4b6-4cbf-abab-bb9dd7d88450",
   "metadata": {},
   "outputs": [],
   "source": [
    "exprs = []\n",
    "meta = []\n",
    "for f in files_vsd:\n",
    "    exprs.append(pd.read_csv(os.path.join(path,f,'vsd.csv'), index_col=0).loc[['MARCHF1'], :].T)\n",
    "    exprs[-1]['GSE'] = f\n",
    "\n",
    "    meta.append(pd.read_csv(os.path.join(path,f,'metadata.csv'), index_col='Run')[['ar']])\n",
    "    if f == 'GSE175718':\n",
    "        meta[-1]['ar'] = np.where(meta[-1]==0, 'Normal', 'ACR')\n",
    "\n",
    "    exprs[-1]['ar'] = exprs[-1].index.map(dict(meta[-1]['ar']))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 378,
   "id": "9e143bdb-11bc-43a4-a4ab-942b07eeaea1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>MARCHF1</th>\n",
       "      <th>GSE</th>\n",
       "      <th>ar</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>SRR14675811</th>\n",
       "      <td>5.489704</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675812</th>\n",
       "      <td>3.977307</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675813</th>\n",
       "      <td>5.482818</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675814</th>\n",
       "      <td>5.967418</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675815</th>\n",
       "      <td>5.312693</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675913</th>\n",
       "      <td>5.663709</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675914</th>\n",
       "      <td>6.004777</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675915</th>\n",
       "      <td>5.867627</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675916</th>\n",
       "      <td>5.923795</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SRR14675917</th>\n",
       "      <td>4.860587</td>\n",
       "      <td>GSE175718</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>384 rows × 3 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "              MARCHF1        GSE      ar\n",
       "SRR14675811  5.489704  GSE175718  Normal\n",
       "SRR14675812  3.977307  GSE175718     ACR\n",
       "SRR14675813  5.482818  GSE175718  Normal\n",
       "SRR14675814  5.967418  GSE175718  Normal\n",
       "SRR14675815  5.312693  GSE175718  Normal\n",
       "...               ...        ...     ...\n",
       "SRR14675913  5.663709  GSE175718     ACR\n",
       "SRR14675914  6.004777  GSE175718     ACR\n",
       "SRR14675915  5.867627  GSE175718     ACR\n",
       "SRR14675916  5.923795  GSE175718  Normal\n",
       "SRR14675917  4.860587  GSE175718  Normal\n",
       "\n",
       "[384 rows x 3 columns]"
      ]
     },
     "execution_count": 378,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "exprs[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 379,
   "id": "d88fd42c-f4c0-4ae0-a636-754dcce93a98",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='GSE', ylabel='MARCHF1'>"
      ]
     },
     "execution_count": 379,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = pd.concat(exprs)\n",
    "ax = sns.boxplot(x='GSE',y='MARCHF1',hue='ar', data=data)\n",
    "sns.stripplot(x='GSE',y='MARCHF1',hue='ar', palette='dark:black', s=1, dodge=True, data=data)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "652d90d1-949b-43f9-9c5f-d67a2bdb8db8",
   "metadata": {},
   "source": [
    "# GSE9377"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 380,
   "id": "689f6c75-5009-48a1-b114-939c41d2ebd0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['GSE9377', 'GSE203548']"
      ]
     },
     "execution_count": 380,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "files_series"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 381,
   "id": "8499df9c-7ec0-4536-b8ae-fdff45ac9518",
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "i = 0\n",
    "# !Sample_characteristics_ch1\n",
    "# !series_matrix_table_begin\n",
    "\n",
    "meta = pd.read_csv(os.path.join(path,'GSE9377','GPL887-20438.txt'), sep='\\t', skiprows=20).dropna(subset='GENE_SYMBOL')\n",
    "gene_id = meta[meta.GENE_SYMBOL.str.contains('MARCH1')].ID.values[0]\n",
    "\n",
    "# exprs = []\n",
    "exprs_aux = []\n",
    "flag_exprs = False\n",
    "meta = []\n",
    "with gzip.open(os.path.join(path,'GSE9377','GSE9377_series_matrix.txt.gz'), 'r') as f:\n",
    "    for line in f:\n",
    "        aux = line.decode()\n",
    "\n",
    "        if '!series_matrix_table_end' in aux:\n",
    "            flag_exprs = False\n",
    "\n",
    "        if flag_exprs:\n",
    "            exprs_aux.append(aux.replace('\\n','').split('\\t'))\n",
    "            \n",
    "        if '!series_matrix_table_begin' in aux:\n",
    "            flag_exprs = True\n",
    "\n",
    "        if ('Acute Rejection Grade' in aux) and aux.startswith('!Sample_characteristics_ch2'):\n",
    "            meta = aux.replace('\\n','').split('\\t')\n",
    "\n",
    "exprs.append(pd.DataFrame(exprs_aux[1:], columns=exprs_aux[0]).set_index('\"ID_REF\"').T[[str(gene_id)]])\n",
    "exprs[-1].columns = ['MARCHF1']\n",
    "exprs[-1]['GSE'] = 'GSE9377'\n",
    "exprs[-1].index = exprs[-1].index.str.replace('\"','')\n",
    "exprs[-1]['ar'] = meta[1:]\n",
    "\n",
    "choicelist = ['health_ref','Normal']\n",
    "condlist = [exprs[-1]['ar']=='\"hum ref\"', exprs[-1]['ar'].str.contains('Rejection Grade 0')]\n",
    "\n",
    "exprs[-1]['ar'] = np.select(choicelist=choicelist, condlist=condlist, default='ACR')\n",
    "\n",
    "exprs[-1] = exprs[-1][exprs[-1].ar!='health_ref']\n",
    "\n",
    "exprs[-1]['MARCHF1'] = exprs[-1]['MARCHF1'].astype(float).round(2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 382,
   "id": "eacfc640-e453-419f-838a-11cdf7d601e5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GSM238702    0.02\n",
       "GSM238703    0.33\n",
       "GSM238705    0.44\n",
       "GSM238706    0.15\n",
       "GSM238707   -0.11\n",
       "GSM238708    0.10\n",
       "GSM238709    0.24\n",
       "GSM238710    0.24\n",
       "GSM238711    0.13\n",
       "GSM238712    0.09\n",
       "GSM238713   -0.17\n",
       "GSM238714    0.03\n",
       "GSM238715    1.08\n",
       "GSM238716    0.37\n",
       "GSM238717    0.79\n",
       "GSM238718    0.65\n",
       "GSM238719   -0.01\n",
       "GSM238720    0.19\n",
       "GSM238721    0.24\n",
       "GSM238726    0.16\n",
       "GSM238727    0.19\n",
       "Name: MARCHF1, dtype: float64"
      ]
     },
     "execution_count": 382,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "exprs[-1].MARCHF1"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a76d34eb-a5eb-44dd-9972-bc03d20d2833",
   "metadata": {},
   "source": [
    "# GSE203548"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 383,
   "id": "33094f19-0df1-4d20-bdae-cccd8228ae28",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'GSM6176135': 'control',\n",
       " 'GSM6176136': 'control',\n",
       " 'GSM6176137': 'CAV (from right ventricle)',\n",
       " 'GSM6176138': 'CAV (from left ventricle)',\n",
       " 'GSM6176139': 'control',\n",
       " 'GSM6176140': 'CAV (from right ventricle)',\n",
       " 'GSM6176141': 'CAV (from right ventricle)',\n",
       " 'GSM6176142': 'CAV (from left ventricle)',\n",
       " 'GSM6176143': 'CAV (from right ventricle)',\n",
       " 'GSM6176144': 'CAV (from left ventricle)'}"
      ]
     },
     "execution_count": 383,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "meta = []\n",
    "geo = []\n",
    "with gzip.open(os.path.join(path,'GSE203548','GSE203548_series_matrix.txt.gz'), 'r') as f:\n",
    "    for line in f:\n",
    "        aux = line.decode()\n",
    "\n",
    "        if ('condition:' in aux) and aux.startswith('!Sample_characteristics_ch1'):\n",
    "            meta = aux.replace('\\n','').replace('\"','').replace('condition: ','').split('\\t')\n",
    "\n",
    "        if aux.startswith('!Sample_geo_accession'):\n",
    "            geo = aux.replace('\\n','').replace('\"','').split('\\t')\n",
    "meta_dict = dict(zip(geo[1:],meta[1:]))\n",
    "meta_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 384,
   "id": "8d04b788-158a-4bfc-a4f3-99693a9bd56a",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/anndata/_core/anndata.py:1758: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n",
      "  utils.warn_names_duplicates(\"var\")\n"
     ]
    }
   ],
   "source": [
    "GSM_KA_dict = dict([f.replace('.tar.gz','').split('_',1)[::-1] for f in os.listdir(path+'GSE203548/GSE203548_RAW') if f.endswith('.tar.gz')])\n",
    "march_exp = []\n",
    "for ka in GSM_KA_dict.keys():\n",
    "    march_exp.append([sc.read_10x_h5(os.path.join(path,'GSE203548','GSE203548_RAW',ka+'_output_filtered.h5'))[:,'MARCH1'].X.sum(),\n",
    "                     GSM_KA_dict[ka]])\n",
    "\n",
    "exprs.append(pd.DataFrame(march_exp).set_index(1))\n",
    "exprs[-1].columns = ['MARCHF1']\n",
    "exprs[-1]['GSE'] = 'GSE203548'\n",
    "exprs[-1]['ar'] = exprs[-1].index.map(meta_dict)\n",
    "exprs[-1] = exprs[-1][exprs[-1]['ar'] !='CAV (from left ventricle)']\n",
    "\n",
    "exprs[-1]['ar'] = np.where(exprs[-1]['ar']=='control','Normal','ACR')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 385,
   "id": "b53c2463-d366-4409-8923-250aa9592d28",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>MARCHF1</th>\n",
       "      <th>GSE</th>\n",
       "      <th>ar</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>GSM6176136</th>\n",
       "      <td>1575</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176143</th>\n",
       "      <td>1236</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176141</th>\n",
       "      <td>2026</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176135</th>\n",
       "      <td>561</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176137</th>\n",
       "      <td>1111</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176139</th>\n",
       "      <td>425</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>Normal</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GSM6176140</th>\n",
       "      <td>473</td>\n",
       "      <td>GSE203548</td>\n",
       "      <td>ACR</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            MARCHF1        GSE      ar\n",
       "1                                     \n",
       "GSM6176136     1575  GSE203548  Normal\n",
       "GSM6176143     1236  GSE203548     ACR\n",
       "GSM6176141     2026  GSE203548     ACR\n",
       "GSM6176135      561  GSE203548  Normal\n",
       "GSM6176137     1111  GSE203548     ACR\n",
       "GSM6176139      425  GSE203548  Normal\n",
       "GSM6176140      473  GSE203548     ACR"
      ]
     },
     "execution_count": 385,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "exprs[-1]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c73f686c-88be-4f88-92d2-b857a9dd3ed9",
   "metadata": {},
   "source": [
    "# Boxplots"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 386,
   "id": "486aaacb-a0ca-4a9b-b64b-1ecd48ceb4d5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1000x300 with 5 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(10,3))\n",
    "\n",
    "for i,e in enumerate(exprs):\n",
    "    ax = fig.add_subplot(1,len(exprs),i+1)\n",
    "    sns.boxplot(x='ar',y='MARCHF1',hue='ar', order=['Normal','ACR'], hue_order=['Normal','ACR'], data=e, ax=ax)\n",
    "    sns.stripplot(x='ar',y='MARCHF1',hue='ar', order=['Normal','ACR'], hue_order=['Normal','ACR'],\n",
    "                  palette='dark:black', s=3, dodge=False, data=e, ax=ax)\n",
    "    ax.set_title(e.GSE.unique()[0])\n",
    "    if i == 0:\n",
    "        ax.set_ylabel('MARCHF1')\n",
    "    else:\n",
    "        ax.set_ylabel('')\n",
    "    ax.set_xlabel('')\n",
    "\n",
    "    # e.to_csv(path+e.GSE.unique()[0]+'_MARCHF1.csv')\n",
    "\n",
    "fig.tight_layout()\n",
    "fig.savefig(path+'exprs_MARCHF1.png', format='png',dpi=300)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7353170e-df25-4bd1-a73f-f64fedbdabe0",
   "metadata": {},
   "source": [
    "# GSE21374"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 387,
   "id": "b97458ee-4496-43f2-b2d7-4e8d22b37320",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/tmp/ipykernel_770/1699422105.py:1: DtypeWarning: Columns (2) have mixed types. Specify dtype option on import or set low_memory=False.\n",
      "  meta = pd.read_csv(os.path.join(path,'GSE21374','GPL570-55999.txt'), sep='\\t', skiprows=16).dropna(subset='Gene Symbol')\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "array(['1562338_at', '219574_at', '229383_at', '235385_at'], dtype=object)"
      ]
     },
     "execution_count": 387,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "meta = pd.read_csv(os.path.join(path,'GSE21374','GPL570-55999.txt'), sep='\\t', skiprows=16).dropna(subset='Gene Symbol')\n",
    "gene_id = meta[meta['Gene Symbol'] == 'MARCH1'].ID.values#[0]\n",
    "gene_id"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 388,
   "id": "09596ef7-bac0-4199-bbf4-4034f70e0902",
   "metadata": {},
   "outputs": [],
   "source": [
    "meta = []\n",
    "geo = []\n",
    "exprs_aux = []\n",
    "flag_exprs = False\n",
    "with gzip.open(os.path.join(path,'GSE21374','GSE21374_series_matrix.txt.gz'), 'r') as f:\n",
    "    for line in f:\n",
    "        aux = line.decode()\n",
    "\n",
    "        if aux.startswith('!Sample_characteristics_ch'):\n",
    "            meta.append(aux.replace('\\n','').replace('\"','').replace('condition: ','').split('\\t'))\n",
    "\n",
    "        if aux.startswith('!Sample_geo_accession'):\n",
    "            geo = aux.replace('\\n','').replace('\"','').split('\\t')\n",
    "\n",
    "        if '!series_matrix_table_end' in aux:\n",
    "            flag_exprs = False\n",
    "\n",
    "        if flag_exprs:\n",
    "            exprs_aux.append(aux.replace('\\n','').split('\\t'))\n",
    "            \n",
    "        if '!series_matrix_table_begin' in aux:\n",
    "            flag_exprs = True\n",
    "\n",
    "exprs = pd.DataFrame(exprs_aux[1:]).set_index(0)\n",
    "exprs.index = [i.replace('\"','') for i in exprs.index]\n",
    "exprs.columns = [c.replace('\"','') for c in exprs_aux[0][1:]]\n",
    "\n",
    "exprs = exprs.T\n",
    "\n",
    "meta = pd.DataFrame(meta).drop(0, axis=1).T\n",
    "meta.index = geo[1:]\n",
    "meta.columns = ['event', 'time_of_biopsy',\n",
    "                'time_from_biopsy_to_censoring',\n",
    "                'acr', 'sample_first_biopsy']\n",
    "meta = meta.apply(lambda x: x.str.split(':').str[1])\n",
    "meta['survival_time'] = meta['time_of_biopsy'].astype(int) + meta['time_from_biopsy_to_censoring'].astype(int)\n",
    "meta['survival_time_y'] = meta['survival_time']/365"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 389,
   "id": "64c38289-ef89-4014-a21e-12ced6d0091b",
   "metadata": {},
   "outputs": [],
   "source": [
    "meta['MARCHF1'] = meta.index.map(dict(exprs[gene_id].astype(float).median(axis=1).loc[meta.index]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 390,
   "id": "2eb9da63-6dc9-4823-b4d1-60b0649dcd3f",
   "metadata": {},
   "outputs": [],
   "source": [
    "condlist = [meta.MARCHF1>meta.MARCHF1.quantile(2/3), meta.MARCHF1<meta.MARCHF1.quantile(1/3)]\n",
    "choicelist = ['High Exprs', 'Low Exprs']\n",
    "meta['risk_MARCHF1'] = np.select(choicelist=choicelist, condlist=condlist, default='Mid Exprs')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 391,
   "id": "b647dd8e-cb10-4184-a0b4-308c70520f32",
   "metadata": {},
   "outputs": [],
   "source": [
    "meta.to_csv(path+'ALL_risk_survival_GSE21374_risk_MARCHF1.csv')\n",
    "meta[meta.risk_MARCHF1=='High Exprs'].to_csv(path+'High_risk_survival_GSE21374_risk_MARCHF1.csv')\n",
    "meta[meta.risk_MARCHF1=='Low Exprs'].to_csv(path+'Low_risk_survival_GSE21374_risk_MARCHF1.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 392,
   "id": "01d1ee4b-1905-4df8-b54c-908e8365642d",
   "metadata": {},
   "outputs": [],
   "source": [
    "from lifelines import KaplanMeierFitter\n",
    "kmf = KaplanMeierFitter()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 393,
   "id": "80fa7b01-4a6b-4f0d-a539-3b0a97792de0",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/lifelines/utils/__init__.py:1185: UserWarning: Attempting to convert an unexpected datatype 'object' to float. Suggestion: 1) use `lifelines.utils.datetimes_to_durations` to do conversions or 2) manually convert to floats/booleans.\n",
      "  warnings.warn(warning_text, UserWarning)\n",
      "/home/guilherme/miniconda3/envs/DSenv/lib/python3.13/site-packages/lifelines/utils/__init__.py:1185: UserWarning: Attempting to convert an unexpected datatype 'object' to float. Suggestion: 1) use `lifelines.utils.datetimes_to_durations` to do conversions or 2) manually convert to floats/booleans.\n",
      "  warnings.warn(warning_text, UserWarning)\n"
     ]
    },
    {
     "data": {
      "image/png": "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kdFhEktERERERodJLBEREREZHSaxRERERGR0mMQS1RAXOwu82bcNXOyebC1ZIiIiqhqX2CKqIS4SS7zVr62hwyAiImoUOBJLREREREaHSSwRERERGR0msURERERkdJjEEhEREZHRYRJLREREREaHSSwRERERGR0usUVUxwpLZSgoKQMAWJmZQhAEA0dERERkfJjEEtWxASuOKX8O8HLAzqhQJrJERER64nQCojpgZWaKAC8HtfKkmznIyCmq+4CIiIiMXLWS2NjYWPj6+sLS0hKBgYE4duyY1rqHDx+GIAhqr0uXLlU7aCJjIwgCdkaF4sR7z+LIrN74+c2nldtKZeUGjIyIiMg46T2dYPv27Zg5cyZiY2MRFhaGL7/8EhEREUhOToa3t7fWdn///TckEonyc7NmzaoXMZGREgQBHo5WAKCcE0tERETVo/dI7GeffYZJkyZh8uTJ6NChA5YvXw4vLy/ExcVV2s7FxQVubm7Kl6mpabWDJiIiIqLGTa8ktqSkBGfPnkV4eLhKeXh4OE6cOFFp265du8Ld3R19+/bFoUOHKq1bXFwMqVSq8iIiIiIiUtAric3OzoZMJoOrq6tKuaurKzIzMzW2cXd3x5o1a/D9999jx44daNeuHfr27YujR49q7ScmJgb29vbKl5eXlz5hEhEREVEDV60ltiouBySKotYlgtq1a4d27dopP4eEhODmzZtYsmQJnnnmGY1t5syZg+joaOVnqVTKRJaIiIiIlPQaiXV2doapqanaqGtWVpba6GxlevTogStXrmjdbmFhAYlEovIiIiIiIlLQK4k1NzdHYGAgEhISVMoTEhIQGhqq837OnTsHd3d3fbomIiIiIlLSezpBdHQ0xo4di6CgIISEhGDNmjVITU3F1KlTAcinAqSlpWHjxo0AgOXLl6NFixbo2LEjSkpKsHnzZnz//ff4/vvva/ZIiBq4LGkRtpxOxehgb7hILGu8PhERkTHRO4mNjIzE3bt3sXDhQmRkZMDf3x/79u2Dj48PACAjIwOpqanK+iUlJZg1axbS0tJgZWWFjh07Yu/evRg4cGDNHQVRI5CVV4wVB66gn5+rbkmsnvWJiIiMSbVu7IqKikJUVJTGbfHx8Sqf3333Xbz77rvV6YaIiIiISKNqPXaWiIiIiMiQmMQSERERkdFhEktERERERqdac2KJqOYUlspQ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",
      "text/plain": [
       "<Figure size 700x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(7,4))\n",
    "ax = fig.add_subplot(111)\n",
    "\n",
    "# t = np.linspace(0, 50, 51)\n",
    "kmf.fit(meta[meta.risk_MARCHF1=='High Exprs']['survival_time_y'],\n",
    "        event_observed=meta[meta.risk_MARCHF1=='High Exprs']['event'], label=\"High Exprs\", alpha=1) #timeline=t, \n",
    "ax = kmf.plot_survival_function(ax=ax, show_censors=True)\n",
    "\n",
    "kmf.fit(meta[meta.risk_MARCHF1=='Low Exprs']['survival_time_y'],\n",
    "        event_observed=meta[meta.risk_MARCHF1=='Low Exprs']['event'], label=\"Low Exprs\", alpha=1) #timeline=t, \n",
    "ax = kmf.plot_survival_function(ax=ax, show_censors=True)\n",
    "\n",
    "ax.set_title(\"Survival by MARCHF1 expresison level\")\n",
    "\n",
    "fig.tight_layout()\n",
    "fig.savefig(path+'survival_MARCHF1.png', format='png',dpi=300)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 394,
   "id": "9ad58b11-eb3e-422d-b084-8fc2e1482126",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "np.float64(3.887050935665)"
      ]
     },
     "execution_count": 394,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "meta.MARCHF1.quantile(.33)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 395,
   "id": "68c47ef2-8f9a-49fd-8e9f-7fa9f4e12802",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.6666666666666666"
      ]
     },
     "execution_count": 395,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "2/3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "1465143f-a5c2-4ecb-aad1-b005dc3455c2",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda env:DSenv]",
   "language": "python",
   "name": "conda-env-DSenv-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.13.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
